The present invention relates to a computer system comprising a plurality of computers connected to each other through a network, or in particular to a distributed file system for managing files distributively for the computer system.
A conventional distributed file system for a computer system is disclosed in JP-A-8-77054 as a specific example of the technology in which a cluster of data (hereinafter referred to as “file”) used by computer programs, etc. is divided into a plurality of portions (hereinafter referred to as “partial files”) arranged distributively among a plurality of computers.
On the other hand, JP-A-2000-207370 discloses a file distribution method, in which partial files are arranged among a plurality of computers based on the load information shared by the computers, including the load of each computer such as the maximum data transfer rate of each computer and the occupancy rate of the storage unit of each computer. Also, according to the method disclosed by JP-A-2000-207370, in the case where a heavy load is imposed on a given computer, the partial files stored in the heavily loaded computer is transferred to other computers.
Also, a distributed file system for a wide-area network based on the assumption that more than hundreds of thousands of computers are connected is proposed in the Sean Rhea et al paper entitled “Maintenance-Free Global Data Storage” (IEEE Internet Computing, Vol. 5, No. 5, September/October 2001, pp. 40-49). In the distributed file system described by this reference, the positions of partial files cannot be specified from a given partial file due to the difference in security level or reliability between the computers connected to the wide-area network. In this way, the security of the distributed file system can be maintained.
In the distributed file system disclosed in JP-A-2000-207370, partial files are moved based only on the load information. In the case where a computer higher in performance than other computers exists in a system, therefore, all the partial files making up a single file may be transferred to the same computer. In such a case, the distribution of partial files making up a given file is meaningless. This disadvantage can be obviated by confirming whether the destination of a partial file has another partial file making up the same file. Specifically, the position of a given partial file making up the same file is specified from the information on another partial file. According to this method, however, as disclosed in the Sean Rhea et al reference above, the security is not maintained for the distributed file system.
Also, in the conventional distributed file system, only the load information of each computer is taken into consideration when laying down the rules (hereinafter referred to as “allocation rule”) for determining the allocation of the partial files or moving the partial files. In the distributed file system according to the prior art, therefore, the partial files cannot be arranged or moved under the allocation rules stipulated taking into consideration the difference, if any, in performance, security, reliability level or utility rate between the computers.
Further, in the distributed file system disclosed in JP-A-8-77054, JP-A-2000-207370 and the Sean Rhea et al reference cited above, no consideration is given to the concept of laying down a plurality of allocation rules based on a plurality of types of information and using them differently from each other depending on the situation.